/*
 * Copyright (c) 2012 Universidad Antonio de Nebrija.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Apache License v2.0
 * which accompanies this distribution, and is available at
 * http://www.apache.org/licenses/LICENSE-2.0.html
 * 
 * Contributors:
 *    Universidad Antonio de Nebrija - initial API, implementation and documentation
 */
package com.nebrija.riif.model;

/**
 * Function that may be needed in the calculation of values
 * e.g. agg_single_fail( MEMORY'MBE[1:NUM_RAMS] )
 * @author asanchep
 *
 */
public interface FunctionInterface {
	/**
	 * Process a set of operands and returns a result
	 * @param operands the parameters that are passed to the function
	 * @return the result
	 */
	public Object processOperands(Object... operands);
	/**
	 * Getter for the function name
	 * @return a string with the function name
	 */
	public String getName();
}
